package br.com.klis.batendoumabola.client.widgets;

import br.com.klis.batendoumabola.shared.DadosDaImagem;

import com.google.gwt.i18n.client.DateTimeFormat;
import com.google.gwt.user.client.ui.DecoratedPopupPanel;
import com.google.gwt.user.client.ui.HTML;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.VerticalPanel;
import com.google.gwt.user.client.ui.Widget;

public class InfoPanel{

	private DecoratedPopupPanel simplePopup = new DecoratedPopupPanel(true);
	private Widget source;
	private DadosDaImagem dados;

	public InfoPanel() {}
	
	public void show(){
		if(source == null || dados == null){
			return;
		}
		
		int left = source.getAbsoluteLeft() + 10;
		int top = source.getAbsoluteTop() + source.getOffsetHeight()+ 10;

		simplePopup.setWidth("150px");
		DateTimeFormat dtf = DateTimeFormat.getMediumDateTimeFormat();
		
		VerticalPanel panel = new VerticalPanel();
		
		panel.add(new Label("Arquivo:"));
		panel.add(new Label(dados.getFileName()));
		
		panel.add(new HTML("&nbsp;"));
		
		panel.add(new Label("Data de Envio:"));
		panel.add(new Label(dtf.format(dados.getCreation())));
		
		simplePopup.setWidget(panel);
		simplePopup.show();
		simplePopup.setPopupPosition(left, top);
	}
	
	public void show(Widget source, DadosDaImagem img) {
		this.source = source;
		this.dados = img;
		show();
	}
	
	public void hide(){
		simplePopup.hide();
	}
	
	public Widget getSource() {
		return source;
	}

	public void setSource(Widget source) {
		this.source = source;
	}

	public DadosDaImagem getDados() {
		return dados;
	}

	public void setDados(DadosDaImagem dados) {
		this.dados = dados;
	}

}
